package org.lmind.srd35.core.item

class Weapon extends Equipment {

  var _isMelee = true
  var _isTouch = true

  var _weaponType = WeaponType.Simple
  var _encumbrance = WeaponEncumbrance.Light

  var _diceSide = 0
  var _diceTimes = 0
  var _criticalRange = 0
  var _criticalMultiple = 0
  
  override def equipmentType = EquipmentType.Weapon

  def isMelee = _isMelee
  def isMelee_=(v: Boolean) = _isMelee = v

  def isTouch = _isTouch
  def isTouch_=(v: Boolean) = _isTouch = v

  def weaponType = _weaponType
  def weaponType_=(v: WeaponType.Value) = _weaponType = v

  def encumbrance = _encumbrance
  def encumbrance_=(v: WeaponEncumbrance.Value) = _encumbrance = v

  def diceSide = _diceSide
  def diceSide_=(v: Int) = _diceSide = v
  
  def diceTimes = _diceTimes
  def diceTimes_=(v: Int) = _diceTimes = v
    
  def criticalRange = _criticalRange
  def criticalRange_=(v: Int) = _criticalRange = v
      
  def criticalMultiple = _criticalMultiple
  def criticalMultiple_=(v: Int) = _criticalMultiple = v
}